j3deditor.bin.components
Class ComplexButton

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by j3deditor.bin.components.ComplexButton
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class ComplexButton
extends javax.swing.JPanel
implements java.awt.event.MouseListener

Object that groups multiple SimpleButton objects together into one button. Inner SimpleButton objects are without images, they only provide the functionality.

Author:
Risto Seene
See Also:
SimpleButton, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static int DISABLED_IMAGE
          specifies that an image will be applied to the "disabled" state of this button.
static int NORMAL_IMAGE
          specifies that an image will be applied to the "default" state of this button.
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ComplexButton()
          Creates an instance of ComplexButton.
 
Method Summary
 void addHotSpot(SimpleButton button, java.awt.Rectangle bounds, java.awt.Image mOver, java.awt.Image mDown)
          Adds new hotspot to this button.
 void addHotSpot(SimpleButton button, java.awt.Rectangle bounds, java.lang.String mOver, java.lang.String mDown)
          Adds new hotspot to this button.
 void mouseClicked(java.awt.event.MouseEvent e)
          Not in use.
 void mouseEntered(java.awt.event.MouseEvent e)
          Activates the hotspot in which bounds the cursor entered.
 void mouseExited(java.awt.event.MouseEvent e)
          Restores the default state of this button.
 void mousePressed(java.awt.event.MouseEvent e)
          Activates the hotspot in which bounds the mouse was pressed.
 void mouseReleased(java.awt.event.MouseEvent e)
          Restores the default state of this button.
protected  void paintComponent(java.awt.Graphics graphics)
          Paints the background image of this button.
 void setEnabled(boolean enable)
          Enables/disables this button.
 void setImage(java.awt.Image image, int type)
          Applies the given image to the specified state of this button.
 void setImage(java.lang.String fileName, int type)
          Applies the given image to the specified state of this button.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getWidth, getVisibleRect, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NORMAL_IMAGE

public static final int NORMAL_IMAGE
specifies that an image will be applied to the "default" state of this button.

See Also:
Constant Field Values

DISABLED_IMAGE

public static final int DISABLED_IMAGE
specifies that an image will be applied to the "disabled" state of this button.

See Also:
Constant Field Values
Constructor Detail

ComplexButton

public ComplexButton()
Creates an instance of ComplexButton.

Method Detail

setImage

public void setImage(java.lang.String fileName,
                     int type)
Applies the given image to the specified state of this button. Loads the images from this applications JAR file.

Parameters:
fileName - name of the image file
type - type of the image: NORMAL_IMAGE, DISABLED_IMAGE

setImage

public void setImage(java.awt.Image image,
                     int type)
Applies the given image to the specified state of this button.

Parameters:
image - image that will be applied to this button
type - type of the image: NORMAL_IMAGE, DISABLED_IMAGE

addHotSpot

public void addHotSpot(SimpleButton button,
                       java.awt.Rectangle bounds,
                       java.lang.String mOver,
                       java.lang.String mDown)
Adds new hotspot to this button. Loads the images from this applications JAR file.

Parameters:
button - SimpleButton object that acts as hotspot
bounds - bounds for this hotspot
mOver - mouse over image for this hotspot
mDown - mouse down image for this hotspot

addHotSpot

public void addHotSpot(SimpleButton button,
                       java.awt.Rectangle bounds,
                       java.awt.Image mOver,
                       java.awt.Image mDown)
Adds new hotspot to this button.

Parameters:
button - SimpleButton object that acts as hotspot
bounds - bounds for this hotspot
mOver - mouse over image for this hotspot
mDown - mouse down image for this hotspot

setEnabled

public void setEnabled(boolean enable)
Enables/disables this button.

Overrides:
setEnabled in class javax.swing.JComponent
Parameters:
enable - if true this button is enabled, otherwise disabled

paintComponent

protected void paintComponent(java.awt.Graphics graphics)
Paints the background image of this button.

Overrides:
paintComponent in class javax.swing.JComponent
Parameters:
graphics - Graphics object sent by method caller

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Activates the hotspot in which bounds the mouse was pressed.

Specified by:
mousePressed in interface java.awt.event.MouseListener
Parameters:
e - MouseEvent sent by method caller

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Restores the default state of this button.

Specified by:
mouseReleased in interface java.awt.event.MouseListener
Parameters:
e - MouseEvent sent by method caller

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Not in use.

Specified by:
mouseClicked in interface java.awt.event.MouseListener
Parameters:
e - MouseEvent sent by method caller

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Activates the hotspot in which bounds the cursor entered.

Specified by:
mouseEntered in interface java.awt.event.MouseListener
Parameters:
e - MouseEvent sent by method caller

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Restores the default state of this button.

Specified by:
mouseExited in interface java.awt.event.MouseListener
Parameters:
e - MouseEvent sent by method caller